using System;
using System.Runtime.Serialization;

namespace SharePoint.ImportExport.Core 
{
	/// <summary>
	/// This is the exception that the extractor class will throw
	/// </summary>
	/// <example>
	/// <code>
	/// throw new SPExportException("A DataContainer must have its type defined");
	/// </code>
	/// </example>
	[Serializable()]
	public class SPExportException: ApplicationException
	{
		/// <summary>
		/// Base constructor of the exception
		/// </summary>
		/// <param name="message">This is the error message</param>
		public SPExportException(string message): base (message)
		{
		}
		/// <summary>
		/// Base constructor of the exception
		/// </summary>
		/// <param name="message"></param>
		/// <param name="ex"></param>
		public SPExportException(string message, Exception ex) : base(message,ex)
		{
		}
			/// <summary>
			/// Default empty constructor
			/// </summary>
			public SPExportException()
		{
		}
		/// <summary>
		/// Constructor for serialization
		/// </summary>
		/// <param name="serializationInfo"></param>
		/// <param name="streamingContext"></param>
		protected SPExportException(SerializationInfo serializationInfo, StreamingContext streamingContext):base(serializationInfo,streamingContext)
		{
		}
}
}
